<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>Nginx 中文文档 - Module ngx_http_log_module | Docs4dev</title>
<meta charset="UTF-8">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta name="description" content="Nginx (engine x) 是一个高性能的HTTP和反向代理服务，也是一个IMAP/POP3/SMTP服务。">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="HandheldFriendly" content="true">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta property="og:type" content="website">
<meta property="og:title" content="Nginx 中文文档 - Module ngx_http_log_module">
<meta property="og:url" content="https://www.docs4dev.com/docs/zh/nginx/current/reference/http-ngx_http_log_module.html">
<meta property="og:site_name" content="Docs4dev">
<meta property="og:locale" content="zh_CN">
<meta name="twitter:card" content="Nginx (engine x) 是一个高性能的HTTP和反向代理服务，也是一个IMAP/POP3/SMTP服务。">
<meta name="generator" content="Docs4dev template engine">
<link rel="stylesheet" href="static/css/app.min.css">
<link rel="shortcut icon" href="https://www.docs4dev.com/static/images/favicon.ico" type="image/x-icon">
<script async="" src="static/js/js.js"></script>
<script async="" src="static/js/adsbygoogle.js" crossorigin="anonymous"></script>
<script>
    window.dataLayer = window.dataLayer || [];

    function gtag() {
      dataLayer.push(arguments);
    }

    gtag('js', new Date());
    gtag('config', 'UA-129571937-1');
  </script>
<link rel="amphtml" href="https://www.docs4dev.com/amp/docs/zh/nginx/current/reference/http-ngx_http_log_module.html">
<script type="application/ld+json">{"name":null,"headline":"Nginx 中文文档-Module ngx_http_log_module","inLanguage":"zh-CN","version":"current","image":"/static/icon/icon-nginx.svg","datePublished":"2021-05-20T12:51:01Z","dateCreated":"2021-05-20T12:51:01Z","dateModified":"2021-07-07T12:48:29Z","@context":"https://schema.org/","@type":"APIReference","abstract":"Nginx (engine x) 是一个高性能的HTTP和反向代理服务，也是一个IMAP/POP3/SMTP服务。"}</script>
</head>
<body>
<div class="book with-summary">
<div class="book-summary">
<div class="logo">
<a href="index.html" style="color: inherit;">
<img src="static/picture/icon-nginx.svg" style="width: 48px; height: 48px;" alt="Logo">
</a>
<b style="color: inherit; margin-left: 8px;">Nginx 中文文档</b>
</div>
<div class="item">
<div>
<label for="version">版本</label>
<select id="version" onchange="onVersionChange(this)">
<option value="current" selected="selected">current</option>
</select>
</div>
<div style="margin-top: 8px;">
<label for="language">语言</label>
<select id="language" onchange="onLangChange(this)" value="zh">
<option value="en">English</option>
<option value="zh" selected="selected">中文</option>
</select>
</div>

</div>
<div class="item menus">
<a title="Table of Contents" style="margin-right: 8px;" href="index.html">
<i class="fa fa-chevron-left"></i>
<span style="margin-left: 2px;">返回目录</span>
</a>
</div>
<nav role="navigation" id="navigation">
<ul class="summary">
<li class="chapter"> <a href="install.html" title="Introduction"> Introduction </a>
<ul class="articles">
<li class="chapter"> <a href="install.html" title="Installing nginx"> Installing nginx </a> </li>
<li class="chapter"> <a href="configure.html" title="从源代码构建  Nginx"> 从源代码构建 Nginx </a> </li>
<li class="chapter"> <a href="beginners_guide.html" title="Beginner's Guide"> Beginner's Guide </a> </li>
<li class="chapter"> <a href="control.html" title="Controlling nginx"> Controlling nginx </a> </li>
<li class="chapter"> <a href="events.html" title="连接处理方法"> 连接处理方法 </a> </li>
<li class="chapter"> <a href="hash.html" title="设置哈希"> 设置哈希 </a> </li>
<li class="chapter"> <a href="debugging_log.html" title="调试日志"> 调试日志 </a> </li>
<li class="chapter"> <a href="syslog.html" title="记录到系统日志"> 记录到系统日志 </a> </li>
<li class="chapter"> <a href="syntax.html" title="配置文件测量单位"> 配置文件测量单位 </a> </li>
<li class="chapter"> <a href="switches.html" title="Command-line parameters"> Command-line parameters </a> </li>
<li class="chapter"> <a href="windows.html" title="Windows 版  Nginx"> Windows 版 Nginx </a> </li>
<li class="chapter"> <a href="http-request_processing.html" title="Nginx 如何处理请求"> Nginx 如何处理请求 </a> </li>
<li class="chapter"> <a href="http-server_names.html" title="Server names"> Server names </a> </li>
<li class="chapter"> <a href="http-load_balancing.html" title="使用  Nginx 作为  HTTP 负载均衡器"> 使用 Nginx 作为 HTTP 负载均衡器 </a> </li>
<li class="chapter"> <a href="http-configuring_https_servers.html" title="配置  HTTPS 服务器"> 配置 HTTPS 服务器 </a> </li>
<li class="chapter"> <a href="stream-stream_processing.html" title="Nginx 如何处理  TCP/UDP 会话"> Nginx 如何处理 TCP/UDP 会话 </a> </li>
<li class="chapter"> <a href="njs-index.html" title="用  njs 编写脚本"> 用 njs 编写脚本 </a> </li>
</ul> </li>
<li class="chapter"> <a href="howto_build_on_win32.html" title="How-To"> How-To </a>
<ul class="articles">
<li class="chapter"> <a href="howto_build_on_win32.html" title="使用  Visual C 在  Win32 平台上构建  Nginx"> 使用 Visual C 在 Win32 平台上构建 Nginx </a> </li>
<li class="chapter"> <a href="nginx_dtrace_pid_provider.html" title="使用  DTrace pid 提供程序调试  nginx"> 使用 DTrace pid 提供程序调试 nginx </a> </li>
<li class="chapter"> <a href="http-converting_rewrite_rules.html" title="转换重写规则"> 转换重写规则 </a> </li>
<li class="chapter"> <a href="http-websocket.html" title="WebSocket proxying"> WebSocket proxying </a> </li>
</ul> </li>
<li class="chapter"> <a href="contributing_changes.html" title="Development"> Development </a>
<ul class="articles">
<li class="chapter"> <a href="contributing_changes.html" title="Contributing Changes"> Contributing Changes </a> </li>
<li class="chapter"> <a href="dev-development_guide.html" title="Development guide"> Development guide </a> </li>
</ul> </li>
<li class="chapter"> <a href="dirindex.html" title="Modules reference"> Modules reference </a>
<ul class="articles">
<li class="chapter"> <a href="dirindex.html" title="指令的字母索引"> 指令的字母索引 </a> </li>
<li class="chapter"> <a href="varindex.html" title="变量按字母顺序索引"> 变量按字母顺序索引 </a> </li>
<li class="chapter"> <a href="ngx_core_module.html" title="Core functionality"> Core functionality </a> </li>
<li class="chapter"> <a href="http-ngx_http_core_module.html" title="ngx_http_core_module"> ngx_http_core_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_access_module.html" title="ngx_http_access_module"> ngx_http_access_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_addition_module.html" title="ngx_http_addition_module"> ngx_http_addition_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_api_module.html" title="ngx_http_api_module"> ngx_http_api_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_auth_basic_module.html" title="ngx_http_auth_basic_module"> ngx_http_auth_basic_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_auth_jwt_module.html" title="ngx_http_auth_jwt_module"> ngx_http_auth_jwt_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_auth_request_module.html" title="ngx_http_auth_request_module"> ngx_http_auth_request_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_autoindex_module.html" title="ngx_http_autoindex_module"> ngx_http_autoindex_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_browser_module.html" title="ngx_http_browser_module"> ngx_http_browser_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_charset_module.html" title="ngx_http_charset_module"> ngx_http_charset_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_dav_module.html" title="ngx_http_dav_module"> ngx_http_dav_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_empty_gif_module.html" title="ngx_http_empty_gif_module"> ngx_http_empty_gif_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_f4f_module.html" title="ngx_http_f4f_module"> ngx_http_f4f_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_fastcgi_module.html" title="ngx_http_fastcgi_module"> ngx_http_fastcgi_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_flv_module.html" title="ngx_http_flv_module"> ngx_http_flv_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_geo_module.html" title="ngx_http_geo_module"> ngx_http_geo_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_geoip_module.html" title="ngx_http_geoip_module"> ngx_http_geoip_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_grpc_module.html" title="ngx_http_grpc_module"> ngx_http_grpc_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_gunzip_module.html" title="ngx_http_gunzip_module"> ngx_http_gunzip_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_gzip_module.html" title="ngx_http_gzip_module"> ngx_http_gzip_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_gzip_static_module.html" title="ngx_http_gzip_static_module"> ngx_http_gzip_static_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_headers_module.html" title="ngx_http_headers_module"> ngx_http_headers_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_hls_module.html" title="ngx_http_hls_module"> ngx_http_hls_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_image_filter_module.html" title="ngx_http_image_filter_module"> ngx_http_image_filter_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_index_module.html" title="ngx_http_index_module"> ngx_http_index_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_js_module.html" title="ngx_http_js_module"> ngx_http_js_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_keyval_module.html" title="ngx_http_keyval_module"> ngx_http_keyval_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_limit_conn_module.html" title="ngx_http_limit_conn_module"> ngx_http_limit_conn_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_limit_req_module.html" title="ngx_http_limit_req_module"> ngx_http_limit_req_module </a> </li>
<li class="chapter"> <a href="" title="ngx_http_log_module"> ngx_http_log_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_map_module.html" title="ngx_http_map_module"> ngx_http_map_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_memcached_module.html" title="ngx_http_memcached_module"> ngx_http_memcached_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_mirror_module.html" title="ngx_http_mirror_module"> ngx_http_mirror_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_mp4_module.html" title="ngx_http_mp4_module"> ngx_http_mp4_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_perl_module.html" title="ngx_http_perl_module"> ngx_http_perl_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_proxy_module.html" title="ngx_http_proxy_module"> ngx_http_proxy_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_random_index_module.html" title="ngx_http_random_index_module"> ngx_http_random_index_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_realip_module.html" title="ngx_http_realip_module"> ngx_http_realip_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_referer_module.html" title="ngx_http_referer_module"> ngx_http_referer_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_rewrite_module.html" title="ngx_http_rewrite_module"> ngx_http_rewrite_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_scgi_module.html" title="ngx_http_scgi_module"> ngx_http_scgi_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_secure_link_module.html" title="ngx_http_secure_link_module"> ngx_http_secure_link_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_session_log_module.html" title="ngx_http_session_log_module"> ngx_http_session_log_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_slice_module.html" title="ngx_http_slice_module"> ngx_http_slice_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_spdy_module.html" title="ngx_http_spdy_module"> ngx_http_spdy_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_split_clients_module.html" title="ngx_http_split_clients_module"> ngx_http_split_clients_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_ssi_module.html" title="ngx_http_ssi_module"> ngx_http_ssi_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_ssl_module.html" title="ngx_http_ssl_module"> ngx_http_ssl_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_status_module.html" title="ngx_http_status_module"> ngx_http_status_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_stub_status_module.html" title="ngx_http_stub_status_module"> ngx_http_stub_status_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_sub_module.html" title="ngx_http_sub_module"> ngx_http_sub_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_upstream_module.html" title="ngx_http_upstream_module"> ngx_http_upstream_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_upstream_conf_module.html" title="ngx_http_upstream_conf_module"> ngx_http_upstream_conf_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_upstream_hc_module.html" title="ngx_http_upstream_hc_module"> ngx_http_upstream_hc_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_userid_module.html" title="ngx_http_userid_module"> ngx_http_userid_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_uwsgi_module.html" title="ngx_http_uwsgi_module"> ngx_http_uwsgi_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_v2_module.html" title="ngx_http_v2_module"> ngx_http_v2_module </a> </li>
<li class="chapter"> <a href="http-ngx_http_xslt_module.html" title="ngx_http_xslt_module"> ngx_http_xslt_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_core_module.html" title="ngx_mail_core_module"> ngx_mail_core_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_auth_http_module.html" title="ngx_mail_auth_http_module"> ngx_mail_auth_http_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_proxy_module.html" title="ngx_mail_proxy_module"> ngx_mail_proxy_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_ssl_module.html" title="ngx_mail_ssl_module"> ngx_mail_ssl_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_imap_module.html" title="ngx_mail_imap_module"> ngx_mail_imap_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_pop3_module.html" title="ngx_mail_pop3_module"> ngx_mail_pop3_module </a> </li>
<li class="chapter"> <a href="mail-ngx_mail_smtp_module.html" title="ngx_mail_smtp_module"> ngx_mail_smtp_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_core_module.html" title="ngx_stream_core_module"> ngx_stream_core_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_access_module.html" title="ngx_stream_access_module"> ngx_stream_access_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_geo_module.html" title="ngx_stream_geo_module"> ngx_stream_geo_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_geoip_module.html" title="ngx_stream_geoip_module"> ngx_stream_geoip_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_js_module.html" title="ngx_stream_js_module"> ngx_stream_js_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_keyval_module.html" title="ngx_stream_keyval_module"> ngx_stream_keyval_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_limit_conn_module.html" title="ngx_stream_limit_conn_module"> ngx_stream_limit_conn_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_log_module.html" title="ngx_stream_log_module"> ngx_stream_log_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_map_module.html" title="ngx_stream_map_module"> ngx_stream_map_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_proxy_module.html" title="ngx_stream_proxy_module"> ngx_stream_proxy_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_realip_module.html" title="ngx_stream_realip_module"> ngx_stream_realip_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_return_module.html" title="ngx_stream_return_module"> ngx_stream_return_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_split_clients_module.html" title="ngx_stream_split_clients_module"> ngx_stream_split_clients_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_ssl_module.html" title="ngx_stream_ssl_module"> ngx_stream_ssl_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_ssl_preread_module.html" title="ngx_stream_ssl_preread_module"> ngx_stream_ssl_preread_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_upstream_module.html" title="ngx_stream_upstream_module"> ngx_stream_upstream_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_upstream_hc_module.html" title="ngx_stream_upstream_hc_module"> ngx_stream_upstream_hc_module </a> </li>
<li class="chapter"> <a href="stream-ngx_stream_zone_sync_module.html" title="ngx_stream_zone_sync_module"> ngx_stream_zone_sync_module </a> </li>
<li class="chapter"> <a href="ngx_google_perftools_module.html" title="ngx_google_perftools_module"> ngx_google_perftools_module </a> </li>
</ul> </li>
</ul>
</nav>
</div>
<div class="book-body">
<div class="body-inner">
<header class="book-header">
<div class="dropdown pull-right js-toolbar-action">
<a class="btn toggle-dropdown" aria-label="Language" href="#">
<i class="fa fa-globe"></i>
</a>
<div class="dropdown-menu dropdown-left">
<div class="dropdown-caret"><span class="caret-outer"></span><span class="caret-inner"></span></div>
<div class="buttons">
<button class="button size-1" onclick="changeLang('zh_CN')">中文</button>
</div>
<div class="buttons">
<button class="button size-1" onclick="changeLang('en_US')">English</button>
</div>
</div>
</div>
<a class="btn pull-right js-toolbar-action non-mobile" aria-label="Sign up" href="register.html">
<i class="fa fa-sign-in"></i> <span>注册</span>
</a>
 <a class="btn pull-right js-toolbar-action non-mobile" aria-label="Sign in" href="register.html">
<i class="fa fa-sign-in"></i>
<span>登录</span>
</a>
<a class="btn pull-left js-toolbar-action btn-summary" href="#"><i class="fa fa-align-justify"></i></a>
<div class="dropdown pull-left font-settings js-toolbar-action">
<a class="btn toggle-dropdown" aria-label="Font Settings" href="#">
<i class="fa fa-font"></i>
</a>
<div class="dropdown-menu dropdown-right">
<div class="dropdown-caret"><span class="caret-outer"></span><span class="caret-inner"></span></div>
<div class="buttons">
<button class="button size-2 font-reduce">A</button>
<button class="button size-2 font-enlarge">A</button>
</div>
<div class="buttons">
<button class="button size-2 family-serif">Serif</button>
<button class="button size-2 family-sans">Sans</button>
</div>
<div class="buttons">
<button class="button size-3 theme-white">White</button>
<button class="button size-3 theme-sepia">Sepia</button>
<button class="button size-3 theme-night">Night</button>
</div>
</div>
</div>
<a class="btn pull-left js-toolbar-action non-mobile" aria-label="Home" href="zh.html">
<i class="fa fa-home"></i> <span>首页</span>
</a>
<a class="btn pull-left js-toolbar-action non-mobile" aria-label="Guide" href="javascript:window.open('https://www.javadoc.org/');">
<i class="fa fa-book"></i> <span>API Docs</span>
</a>
<a class="btn pull-left js-toolbar-action non-mobile" aria-label="Tools" href="index1.html">
<i class="fa fa-gears"></i> <span>工具</span>
</a>
<div class="dropdown pull-left js-toolbar-action mobile">
<a class="btn toggle-dropdown" aria-label="Language" href="#">
<i class="fa fa-chevron-down"></i>
</a>
<div class="dropdown-menu dropdown-right">
<div class="dropdown-caret"><span class="caret-outer"></span><span class="caret-inner"></span></div>
<div class="buttons">
<a class="button size-1" aria-label="Home" href="zh.html">
<i class="fa fa-home"></i> <span>首页</span>
</a>
</div>
<div class="buttons">
<a class="button size-1" aria-label="Guide" href="javascript:window.open('https://www.javadoc.org/');">
<i class="fa fa-book"></i> <span>API Docs</span>
</a>
</div>
<div class="buttons">
<a class="button size-1" aria-label="Tools" href="index1.html">
<i class="fa fa-gears"></i> <span>工具</span>
</a>
</div>
</div>
</div>
<div id="autocomplete" class="pull-right"></div>
<span id="toolbar-title"></span>
</header>
<div class="page-wrapper" tabindex="-1" role="main">
<div class="page-inner">
<section class="normal markdown-section">
<div id="content">
<h1>Module ngx_http_log_module</h1>
<div><ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-6108808167664152" data-ad-slot="6964403648"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script></div>
<div><ul>
<li><a href="#example">Example Configuration</a></li>
<li><a href="#directives">Directives</a>
<ul>
<li><a href="#access_log">access_log</a></li>
<li><a href="#log_format">log_format</a></li>
<li><a href="#open_log_file_cache">open_log_file_cache</a><br><a href="" id="summary"></a></li>
</ul>
</li>
</ul>
<p><code>ngx_http_log_module</code>模块以指定格式写入请求日志。</p>
<p>请求记录在处理结束位置的上下文中。如果在请求处理期间发生了<a href="http-ngx_http_core_module.html#internal">internal redirect</a>，则它可能与原始位置不同。</p>
<p><a href="" id="example"></a></p>
<h4 id="example-configuration"><a href="#example-configuration" id="example-configuration"></a>Example Configuration</h4>
<pre><code class="hljs language-shell">log_format compression '$remote_addr - $remote_user [$time_local] '
                       '&quot;$request&quot; $status $bytes_sent '
                       '&quot;$http_referer&quot; &quot;$http_user_agent&quot; &quot;$gzip_ratio&quot;';

access_log /spool/logs/nginx-access.log compression buffer=32k;
</code></pre>
<p><a href="" id="directives"></a></p>
<h4 id="directives"><a href="#directives" id="directives"></a>Directives</h4>
<p><a href="" id="access_log"></a></p>
<table>
<thead></thead>
<tbody>
<tr><td>Syntax:</td><td><code>access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=condition]];</code></td></tr>
<tr><td><br><code>access_log off;</code></td></tr>
<tr><td>默认值：</td><td><code>access_log logs/access.log combined;</code></td></tr>
<tr><td>上下文： <code>http</code>，<code>server</code>，<code>location</code>，<code>if in location</code>，<code>limit_except</code></td></tr>
</tbody>
</table>
<p>设置缓冲日志写入的路径，格式和配置。可以在同一级别上指定多个日志。可以通过在第一个参数中指定“ <code>syslog:</code>”前缀来配置登录到<a href="syslog.html">syslog</a>。特殊值<code>off</code>会取消当前级别上的所有<code>access_log</code>指令。如果未指定格式，则使用 sched 义的“ <code>combined</code>”格式。</p>
<p>如果使用<code>buffer</code>或<code>gzip</code>(1.3.10，1.2.7)参数，则将写入日志。</p>
<div class="alert callout info"><p class="title"><i class="fa fa-info-circle"></i>Note</p><div><p>缓冲区大小不得超过对磁盘文件进行原子写入的大小。对于 FreeBSD，此大小是无限的。</p>
</div></div>
<p>启用缓冲后，数据将被写入文件：</p>
<ul>
<li>
<p>如果下一个日志行不适合缓冲区；</p>
</li>
<li>
<p>如果缓冲的数据早于<code>flush</code>参数(1.3.10，1.2.7)指定的数据；</p>
</li>
<li>
<p>当工作进程为<a href="control.html">re-opening</a>个日志文件或正在关闭时。</p>
</li>
</ul>
<p>如果使用<code>gzip</code>参数，则缓冲的数据将在写入文件之前被压缩。压缩级别可以设置为 1(最快，更少压缩)到 9(最慢，最佳压缩)。默认情况下，缓冲区大小等于 64K 字节，并且压缩级别设置为 1.由于数据是按原子块压缩的，因此可以随时对日志文件进行解压缩或以“ <code>zcat</code>”读取。</p>
<p>Example:</p>
<pre><code class="hljs language-shell">access_log /path/to/log.gz combined gzip flush=5m;
</code></pre>
<div class="alert callout info"><p class="title"><i class="fa fa-info-circle"></i>Note</p><div><p>为了使 gzip 压缩正常工作，必须使用 zlib 库构建 nginx。</p>
</div></div>
<p>文件路径可以包含变量(0.7.6)，但是此类日志具有一些约束：</p>
<ul>
<li>
<p>工作进程使用其凭据的<a href="ngx_core_module.html#user">user</a>应具有在具有此类日志的目录中创建文件的权限；</p>
</li>
<li>
<p>缓冲写不起作用；</p>
</li>
<li>
<p>每次写入日志时都会打开和关闭文件。但是，由于可以将常用文件的 Descriptors 存储在<a href="#open_log_file_cache">cache</a>中，因此可以在<a href="#open_log_file_cache">open_log_file_cache</a>指令的<code>valid</code>参数指定的时间内 continue 写入旧文件。</p>
</li>
<li>
<p>在每个日志中写入请求的<a href="http-ngx_http_core_module.html#root">root directory</a>是否存在，如果不存在，则不创建日志。因此，最好在同一级别上同时指定<a href="http-ngx_http_core_module.html#root">root</a>和<code>access_log</code>：</p>
</li>
</ul>
<pre><code class="hljs language-shell">server {
    root       /spool/vhost/data/$host;
    access_log /spool/vhost/logs/$host;
    ...
</code></pre>
<p><code>if</code>参数(1.7.0)启用条件日志记录。如果<code>condition</code>的值为“ 0”或空字符串，则不会记录请求。在以下示例中，将不会记录响应代码为 2xx 和 3xx 的请求：</p>
<pre><code class="hljs language-shell">map $status $loggable {
    ~^[23]  0;
    default 1;
}

access_log /path/to/access.log combined if=$loggable;
</code></pre>
<p><a href="" id="log_format"></a></p>
<table>
<thead></thead>
<tbody>
<tr><td>Syntax:</td><td><code>log_format name [escape=default|json|none] string ...;</code></td></tr>
<tr><td>Default:</td><td><code>log_format combined &quot;...&quot;;</code></td></tr>
<tr><td>Context:</td><td><code>http</code></td></tr>
</tbody>
</table>
<p>指定日志格式。</p>
<p><a href="" id="log_format_escape"></a></p>
<p><code>escape</code>参数(1.11.8)允许在变量中设置<code>json</code>或<code>default</code>字符转义，默认情况下使用<code>default</code>转义。 <code>none</code>值(1.13.10)禁用转义。</p>
<p><a href="" id="log_format_escape_default"></a></p>
<p>对于<code>default</code>转义，字符“ <code>&quot;</code>”，“ <code>\</code>”以及其他值小于 32(0.7.0)或大于 126(1.1.6)的字符将转义为“ <code>\xXX</code>”。如果找不到变量值，将记录连字符(“ <code>-</code>”)。</p>
<p><a href="" id="log_format_escape_json"></a></p>
<p>对于<code>json</code>转义，将转义 JSON <a href="javascript:window.open('https://tools.ietf.org/html/rfc8259#section-7');" target="_blank" rel="noopener noreferrer">strings</a>中不允许的所有字符：字符“ <code>&quot;</code>”和“ <code>\</code>”转义为“ <code>\&quot;</code>”和“ <code>\\</code>”，值小于 32 的字符转义为“ <code>\n</code>”，“ <code>\r</code>” ，“ <code>\t</code>”，“ <code>\b</code>”，“ <code>\f</code>”或“ <code>\u00XX</code>”。</p>
<p>日志格式可以包含公用变量，以及仅在写入日志时存在的变量：</p>
<h4 id="bytes-sent"><a href="#var_bytes_sent" id="var_bytes_sent"></a> $bytes_sent</h4>
<ul>
<li>发送给客户端的字节数</li>
</ul>
<h4 id="connection"><a href="#var_connection" id="var_connection"></a> $connection</h4>
<ul>
<li>连接序列号</li>
</ul>
<h4 id="connection-requests"><a href="#var_connection_requests" id="var_connection_requests"></a> $connection_requests</h4>
<ul>
<li>通过连接发出的当前请求数(1.1.18)</li>
</ul>
<h4 id="msec"><a href="#var_msec" id="var_msec"></a> $msec</h4>
<ul>
<li>日志写入时的时间(以毫秒为单位)，以毫秒为单位</li>
</ul>
<h4 id="pipe"><a href="#var_pipe" id="var_pipe"></a> $pipe</h4>
<ul>
<li>“ <code>p</code>”(如果请求已传递)，否则为“ <code>.</code>”</li>
</ul>
<h4 id="request-length"><a href="#var_request_length" id="var_request_length"></a> $request_length</h4>
<ul>
<li>请求长度(包括请求行，Headers 和请求正文)</li>
</ul>
<h4 id="request-time"><a href="#var_request_time" id="var_request_time"></a> $request_time</h4>
<ul>
<li>请求以毫秒为单位的处理时间(以秒为单位)；从客户端读取第一个字节到将最后一个字节发送到客户端后的日志写入之间经过的时间</li>
</ul>
<h4 id="status"><a href="#var_status" id="var_status"></a> $status</h4>
<ul>
<li>response status</li>
</ul>
<h4 id="time-iso8601"><a href="#var_time_iso8601" id="var_time_iso8601"></a> $time_iso8601</h4>
<ul>
<li>ISO 8601 标准格式的当地时间</li>
</ul>
<h4 id="time-local"><a href="#var_time_local" id="var_time_local"></a> $time_local</h4>
<ul>
<li>通用日志格式的本地时间</li>
</ul>
<div class="alert callout info"><p class="title"><i class="fa fa-info-circle"></i>Note</p><div><p>在现代的 Nginx 版本中，变量<a href="http-ngx_http_core_module.html#var_status">$status</a>(1.3.2，1.2.2)，<a href="http-ngx_http_core_module.html#var_bytes_sent">$bytes_sent</a>(1.3.8，1.2.5)，<a href="http-ngx_http_core_module.html#var_connection">$connection</a>(1.3.8，1.2.5)，<a href="http-ngx_http_core_module.html#var_connection_requests">$connection_requests</a>(1.3.8，1.2.5)， <a href="http-ngx_http_core_module.html#var_msec">$msec</a>(1.3.9，1.2.6)，<a href="http-ngx_http_core_module.html#var_request_time">$request_time</a>(1.3.9，1.2.6)，<a href="http-ngx_http_core_module.html#var_pipe">$pipe</a>(1.3.12，1.2.7)，<a href="http-ngx_http_core_module.html#var_request_length">$request_length</a>(1.3.12，1.2.7)，<a href="http-ngx_http_core_module.html#var_time_iso8601">$time_iso8601</a>(1.3.12， 1.2.7)和<a href="http-ngx_http_core_module.html#var_time_local">$time_local</a>(1.3.12，1.2.7)也可以用作公共变量。</p>
</div></div>
<p>发送到客户端的标题行带有前缀“ <code>sent_http_</code>”，例如<code>$sent_http_content_range</code>。</p>
<p>该配置始终包括 sched 义的“ <code>combined</code>”格式：</p>
<pre><code class="hljs language-shell">log_format combined '$remote_addr - $remote_user [$time_local] '
                    '&quot;$request&quot; $status $body_bytes_sent '
                    '&quot;$http_referer&quot; &quot;$http_user_agent&quot;';
</code></pre>
<p><a href="" id="open_log_file_cache"></a></p>
<table>
<thead></thead>
<tbody>
<tr><td>Syntax:</td><td><code>open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time];</code></td></tr>
<tr><td><br><code>open_log_file_cache off;</code></td></tr>
<tr><td>默认值：</td><td><code>open_log_file_cache off;</code></td></tr>
<tr><td>上下文： <code>http</code>，<code>server</code>，<code>location</code></td></tr>
</tbody>
</table>
<p>定义一个缓存，该缓存存储名称中包含变量的常用日志的文件 Descriptors。该指令具有以下参数：</p>
<ul>
<li>
<p><code>max</code></p>
<ul>
<li>设置缓存中 Descriptors 的最大数量；如果缓存已满，则关闭最近最少使用(LRU)Descriptors</li>
</ul>
</li>
<li>
<p><code>inactive</code></p>
<ul>
<li>设置如果在这段时间内没有访问权限，则关闭缓存的 Descriptors 的时间；默认情况下为 10 秒</li>
</ul>
</li>
<li>
<p><code>min_uses</code></p>
<ul>
<li>设置在<code>inactive</code>参数定义的时间内文件使用的最小数量，以使 Descriptors 在缓存中保持打开状态；默认情况下，1</li>
</ul>
</li>
<li>
<p><code>valid</code></p>
<ul>
<li>设置时间，在该时间后应检查文件是否仍然具有相同名称；默认情况下为 60 秒</li>
</ul>
</li>
<li>
<p><code>off</code></p>
<ul>
<li>disables caching</li>
</ul>
</li>
</ul>
<p>Usage example:</p>
<pre><code class="hljs language-shell">open_log_file_cache max=1000 inactive=20s valid=1m min_uses=2;
</code></pre>
</div>
</div>
</section>
<div class="right-sidebar">
<div class="affix"><ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6108808167664152" data-ad-slot="3102929424" data-ad-format="auto" data-full-width-responsive="true"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script></div>
</div>
</div>
<div class="ft">
<a href="#toolbar-title" id="anchorNavigationExGoTop"><i class="fa fa-arrow-up"></i></a>
<footer class="footer">
<div class="footer__container--normal">
<img alt="扫码关注公众号" title="扫码关注公众号" src="static/picture/qr-code.png" width="170" height="170">
<div class="footer__description--normal">
<p class="paragraph footer__author--normal">Docs4dev<sup class="super">&#xAE;</sup>
</p>
<p class="paragraph footer__quote&#45;&#45;normal">
如果你在使用过程中遇到任何问题，可以在 <a href="javascript:window.open('https://github.com/docs4dev/docs4dev-issues');" target="_blank" rel="noopener noreferrer">这里<i class="fa fa-external-link"></i></a> 提issue。
</p>
<div class="footer__main--normal">
<p class="paragraph footer__main__paragraph--normal copyright" style="color: #666 !important;">
<a href="javascript:window.open('https://beian.miit.gov.cn/');">
 蜀ICP备14021783号-6
</a>
</p>
<p class="paragraph footer__main__paragraph--normal copyright" style="color: #666 !important;">
Copyright &#xA9; Docs4dev all
right reserved, powered by <a href="index2.html" target="_blank">Docs4dev</a></p>
</div>
</div>
</div>
<div class="box__issues">
</div>
</footer>
</div>
</div>
</div>
</div>
</div>
<script>
  var hasToc = true;
  /*  var downloadable = /!*false*!/ false;
    var editable = /!*false*!/ false;
    var code = /!*"nginx"*!/ false;
    var version = /!*"current"*!/ false;
    var type = /!*"reference"*!/ false;
    var lang = /!*"zh"*!/ 'en';
    //edit link
    require(["gitbook", "jQuery"], function (gitbook, $) {
      gitbook.events.bind('start', function (e, config) {
        // Add edit toolbar to left
        var chapterId = /!*17785*!/ 0;
        if (downloadable) {
          gitbook.toolbar.createButton({
            icon: 'fa fa-download',
            text: '下载',
            onClick: function () {
              window.open('/download?code=' + code + '&version=' + version + '&type=' + type + '&lang=' + lang);
            }
          });
        }
        if (editable) {
          gitbook.toolbar.createButton({
            icon: 'fa fa-edit',
            text: '编辑此页',
            onClick: function () {
              window.open('/docs/edit?chapterId=' + chapterId + '&lang=' + lang);
            }
          });
        }
      });
    });*/
</script>
<script>
    var code = "nginx";
    var lang = "zh";
  </script>

<script src="static/js/autocomplete-js.js"></script>
<script src="static/js/app.min.js"></script>
<script src="static/js/search.min.js"></script>
</body>
</html>
